Updates, as I remember them. 

Note: you can check what version a recent DXTGen.exe is by doing the
following:

- Right click on DXTGen.exe, get properties

- Go to the version tab, look at the File version. v1.1.0.23 is v23 as
below. (v1.0.x.y was the commandline tool; 1.1.x.y is the GUI
version).

-----

V9

- First version w/ GUI. Lots of things added. [NM]

-----

V10
- Added in support for regular expressions & rules in rules cfg.
Thanks to the PCRE library, freely available from http://www.pcre.org/ [NM]

-----

V11

- First version with changelog [NM]

- Fixed a bunch of memory leaks, code problems [NM]

- OpenIL errors reported in output, if encountered [NM]

- Made Date check / use 2nd directory checkboxes, not radio buttons [NM]

- After scanning, prints a summary of files in 3 categories: (1) ones
that didn't load or were a non-power-of-2 size, (2) ones skipped by
the rules cfg, (3) ones successfully processed. [NM]

-----

V12

- Updated 3rd party libs: libpng to v1.2.25, libmng to v1.0.10,
libvorbis to v1.2.0, libcms to v1.17, PCRE to v7.6. Also, in the jpeg
libs, defaulted them to using floating point conversions of files, not
integers.  Modern superscalar CPUs should be slightly faster when they
keep more functional units in flight at once. This may slightly affect
the output; I know that the metal1-4.dxtbz2 changed slightly as a
result of this. [NM]

- Pre-scaling should have slightly higher quality now. Instead of
scaling once at the start to the prescale size, then shrinking that
down each time, it goes from the original image to each of the
computed sizes, and writes that out. Doubtful if this will be
noticeable, but it appeals to me. [NM]

- Other minor tweaks/polish. [NM]

-----

V13

- Added 'manifest' information for Windows Vista to the exe, noting
that it it should be fine to run DXTGen.exe with the same
security/privledges as the person who ran it. I don't think it's
necessary to require admin privs at all. [NM]

-----

V14

- Upgraded to libpng v1.2.29 (security update) [NM]

-----

V15

- Icons are scaled to 32x32 as a first step. [NM]

-----

V16

- Compiled with Visual Studio 2008. [NM]
- Upgraded PCRE library to v7.8 [NM]
- Upgraded LibPNG to 1.2.32 [NM]
- Correctly handles upscaling textures before writing [NM]
- In BZ2DXTOptions.cfg, Shell backgrounds (640x480) are now upscaled
  to 1024x1024, and written with three mipmaps (1024x1024, 512x512,
  and 256x256). Most 256x256 textures are upscaled to 512x512 before
  writing, and most 128x128 textures are upscaled to 256x256, to give
  the graphics card something to work with. Textures in the
  'interface' folder skip this upscaling, usually because BZ2 assumes
  fixed sizes of those textures. [NM]

-----

V17

- Upgraded LibPNG to v1.3.34 [NM]
- Upgraded OpenIL libs to 1.7.3, which includes JasPer version 1.900.1 [NM]
- Added support for .jp2 (jpeg2000) file extensions on input. [NM]

-----

V18

- Upgraded OpenIL libs to 1.7.5 [NM]

-----

V19

- Upgraded LibPNG to v1.3.35 [NM]
- Upgraded OpenIL libs to 1.7.7 [NM]

-----

V20

- Skips any file with 'volumetexture' in its name. Those need to be
.dds volumetexture, not .dxtbz2 file format. [NM]
- Upgraded little cms lib to 1.18 [NM]
- Upgraded OpenIL libs to 1.7.8 [NM]

-----

V21

- Rebased all DLLs to optimize startup time. [NM]

-----

V22

- Added high quality Vista/Win7 256x256 icon. [NM]
- Upgrade PCRE to v7.9 [NM]

-----

V23

- Fixed bug that allowed some opaque textures to go transparent when
resized. In BZ2DXTOptions.cfg, Allow3ColorModeDXT1 is a fix for that.
3-color mode (when true) allows output textures to have transparent
chunks; the default is now to force 4-color mode, which prevents that.
It seems as if the nVidia compressor's default was to allow 3-color
mode, as if it could be more accurate. That was a bad guess on opaque
input textures. Now, in BZ2DXTOptions.cfg, Allow3ColorModeDXT1
defaults to false (i.e. force 4-color more, and prevent black from
going transparent). If you want the behavior of previous versions,
set it to true. [NM]

- Added in per-mip adjustment & previewing options. See
BZ2DXTOptions.cfg for more info. [NM]

- Added in an 'upscaling' cfg, useful for testing upscaled textures.
It adds in a small amount of noise to the upscaled texture. This is
not used when converting stock assets. [NM]

- Fixed bug where non-default, and unspecified options under
[__DEFAULT_BZ2DXTOPTIONS__] would not be applied to files not caught
by rules. Now, all items implicitly start off w/ the values from
whatever's under [__DEFAULT_BZ2DXTOPTIONS__]. [NM]

-----

V24

- Fixed part of mantis #1865 - ensured that presharpen/sharpen values
of 1.0 w/ a pass of 1 aren't applied. OpenIL is picky. Not sure why
this didn't show up in converting stock assets. [NM]

- Added in the same exception (crash) handling code as BZ2. If it
crashes, it'll pull up the same window, with a little less info. This
necessitates the inclusion of .pdb files in the BZ2DXTGen
distribution, which makes the download larger. [NM]

- Fix for the rest of mantis #1865 - if "/captureoutput" (or
"-captureoutput") is the first param on the command line, then output
can be redirected to an file. For example, this commandline workds:

DXTGen.exe /captureoutput c:\temp\dxtgenin c:\temp\dxtgenin\BZ2DXTOptions.cfg c:\temp\dxtgenout > dxtgen_log.txt

-----

V25

- Forgot to include dbghelp.dll in the last distribution. More things
to make the download larger.

- Uses fancy themes on XP and newer, if user has them turned on.

-----

V26

- Fix for mantis #1906 - upgraded libpng to 1.2.38, littlecms to
1.18a, MS debugging tools for Windows 6.11.1.404 version. Rebased DLLs
again to avoid relocation penalties on my boxes here.

-----

V27

- 3rd party lib upgrades: libjpeg -> version 7, libpng -> 1.2.39, 
libtiff -> version 3.9.1

-----

V28

- 3rd party lib upgrades: 
  - Independent JPEG Group's JPEG source version 8b, from http://www.ijg.org/
  - libpng version 1.4.3 from http://www.libpng.org/
  - libtiff 3.9.4, 2010-08-13 version from http://www.remotesensing.org/libtiff/ 's CVS instructions
  - PCRE 8.10, from http://www.pcre.org/ 

-----

V29
- 3rd party lib upgrades: 
  - libpng version 1.5.2 from http://www.libpng.org/
  - JPEG lib to version 8c, from http://www.ijg.org/
  - libtiff to version 3.9.5 from http://www.remotesensing.org/libtiff/ 's CVS instructions
  - littlecms to version 2.1 from http://www.littlecms.com/
  - PCRE to version 8.12, from http://www.pcre.org/ 

-----

V30

- Better handling of various image formats, including PNGs with
transparent colors. Forced images into known consistent 24 and 32 bit
modes in memory before processing starts. This did appear to change a
bunch of textures when reprocessing all the BZ2 textures, including
hp_* and icon_*, but I can't see any difference ingame. [NM]

-----

V31

- 3rd party lib upgrades: 
  - Independent JPEG Group's JPEG source version 8d, from http://www.ijg.org/
  - libpng version 1.5.10 from http://www.libpng.org/
  - libtiff 4.0.1, 2012-06-02 version from http://www.remotesensing.org/libtiff/ 's CVS instructions
  - Little CMS library, v2.3 from http://www.littlecms.com/
  - PCRE 8.30, from http://www.pcre.org/ 
  - zlib v1.2.7, from http://www.zlib.net/
- hqx 1.1 from http://code.google.com/p/hqx/
  - cfg options to use it
- Added an upscaling cfg to upsample and slightly noisify the upsampled textures

-----

V32

- Allow non-power-of-2 texture sizes, see 'AllowNonPower2Size' in 
BZ2DXTOptions.cfg [NM]
